gchar *widget_name;
gint response_id;
gboolean is_default;
+ gint line;
+ gint col;
} ActionWidgetInfo;
typedef struct {
gboolean is_text;
GString *string;
gboolean in_action_widgets;
+ gint line;
+ gint col;
} SubParserData;
static void
data->is_default = is_default;
data->is_text = TRUE;
g_string_set_size (data->string, 0);
+ g_markup_parse_context_get_position (context, &data->line, &data->col);
}
else if (strcmp (element_name, "action-widgets") == 0)
{
item->widget_name = g_strdup (data->string->str);
item->response_id = data->response_id;
item->is_default = data->is_default;
+ item->line = data->line;
+ item->col = data->col;
data->items = g_slist_prepend (data->items, item);
data->is_default = FALSE;
ActionWidgetInfo *item = l->data;
gboolean is_action;
- object = gtk_builder_get_object (builder, item->widget_name);
+ object = _gtk_builder_lookup_object (builder, item->widget_name, item->line, item->col);
if (!object)
- {
- g_warning ("Unknown object %s specified in action-widgets of %s",
- item->widget_name,
- gtk_buildable_get_name (GTK_BUILDABLE (buildable)));
- continue;
- }
+ continue;
/* If the widget already has reponse data at this point, it
* was either added by gtk_dialog_add_action_widget(), or via